package com.xzmzhp.controller.people;

import com.xzmzhp.pojo.people.Position;
import com.xzmzhp.service.people.PositionService;
import com.xzmzhp.utils.return_tool.ReturnData;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

/**
 * @author 王源
 * @Date: 2020/11/15 10:53
 * @Description: 部门信息前台交互页面
 */
@Controller
@CrossOrigin(origins = "*", maxAge = 3600)
@RequestMapping("/position")
public class PositionController {

    @Autowired
    private PositionService positionService;

    /**
     * 返回所有部门信息
     *
     * @return returnData
     */
    @GetMapping("/findAll")
    @ResponseBody
    public ReturnData findAll() {
        return positionService.findAll();
    }

    /**
     * 根据部门id返回部门信息
     *
     * @param positionId 部门id
     * @return returnData
     */
    @RequestMapping("/findById")
    @ResponseBody
    public ReturnData findById(int positionId) {
        return positionService.findById(positionId);
    }

    /**
     * 根据部门名称返回部门信息
     *
     * @param positionName 部门名称
     * @return returnData
     */
    @RequestMapping("/findByName")
    @ResponseBody
    public ReturnData findByName(String positionName) {
        return positionService.findByName(positionName);
    }

    /**
     * 添加部门信息
     *
     * @param positionName 部门名称
     * @return returnData
     */
    @RequestMapping("/addPosition")
    @ResponseBody
    public ReturnData addPosition(String positionName) {
        return positionService.addPosition(positionName);
    }

    /**
     * 修改部门信息
     *
     * @param position Position对象
     * @return returnData
     */
    @RequestMapping("/updatePosition")
    @ResponseBody
    public ReturnData updatePosition(Position position) {
        return positionService.updatePosition(position);
    }

    /**
     * 删除部门信息
     *
     * @param positionId 部门id
     * @return returnData
     */
    @RequestMapping("/deletePosition")
    @ResponseBody
    public ReturnData deletePosition(int positionId) {
        return positionService.deletePosition(positionId);
    }
}
